Audio data is increasingly being stored in digital form and played back after being converted back to analog form. For example, most audio music, whether stored on a Compact Disk (“CD”) or in compressed Moving Picture Experts Group, audio layer 3 (“MP3”) form, is digital. Sometimes there is a need to playback audio digital data at a different speed than what was recorded. Many digital answering machines and digital dictaphone systems allow for playback of digital messages at variable speeds.
One feature of variable speed playback that is commonly found in voice mail systems is pitch corrected speed control (“PCSC”). PCSC allows a user to control the playback speed of digital audio without the audio pitch being modified.
Many voice mail systems and other systems that have PCSC compress stored audio digital data. The data must then be decoded by a decoder before it is received by a controller that implements the PCSC. Therefore, the decoder must supply the correct amount of decoded data, and the amount of decoded data required will differ depending on the playback speed requested.
The typical voice mail system that includes PCSC encodes/compresses the stored data using a waveform coder. Waveform coders attempt to preserve the form of an audio speech wave. Examples of waveform coders include Pulse Code Modulation (“PCM”), Mu-law or A-law coders. Each waveform decoder execution produces one decoded sample.
A parametric coder can provide advantages over a waveform coder because the speech can be more highly compressed by representing speech with a set of parameters. Examples of parametric coders include Linear Prediction Coefficient (“LPC”) and code excited linear prediction (“CELP”) coders. Unlike waveform decoders, each parametric decoder execution produces a block of decoded samples. The size of the block is different for different parametric coders, but may be a fixed size of about a multiple of groups of ten samples. This makes it difficult to implement a parametric coder/decoder in a voice mail system having PCSC because of differences between the decoder output sample number and the number of samples needed by the controller.
Based on the foregoing, there is a need for a digital audio playback system having a parametric decoder and PCSC.